/**
 * Project Name:fire-industry-DM-center
 * File Name:DmMapDomesticDrugs.java
 * Package Name:com.firestone.bean.entity.elasticsearch.dm
 * Date:2018年4月9日上午10:50:26
 *
*/

package com.firestone.bean.entity.elasticsearch.dm;

import java.io.Serializable;
import java.util.List;

import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.DateFormat;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
import org.springframework.data.elasticsearch.annotations.Setting;

import com.firestone.bean.entity.elasticsearch.nested.WeightJson;

/**
 * @Description: TODO(数据工厂DM层国内药品表 Elasticsearch bean)
 *               DM数据工厂ES表不由该系统维护，请将createIndex设为false，避免系统启动时修改了大数据维护表的索引
 * @author CAIYJ
 * @date 2018年4月9日 上午10:50:26
 */
@Document(indexName = "dm_map_domestic_drugs", type = "index", createIndex = false)
@Setting(settingPath = "/setting/setting.json")
public class DmMapDomesticDrugs implements Serializable {

    private static final long serialVersionUID = 1L;
    @Id
    private String id;
    /**
     * @Fields SYS_add_time : TODO(添加时间)
     */
    @Field(type = FieldType.Date, format = DateFormat.custom, pattern = "yyyy-MM-dd HH:mm:ss")
    private String SYS_add_time;

    /**
     * @Fields SYS_add_time : TODO(检验时间)
     */
    @Field(type = FieldType.Date, format = DateFormat.custom, pattern = "yyyy-MM-dd HH:mm:ss")
    private String SYS_check_time;

    /**
     * @Fields SYS_add_time : TODO(更改时间)
     */
    @Field(type = FieldType.Date, format = DateFormat.custom, pattern = "yyyy-MM-dd HH:mm:ss")
    private String SYS_dm_update_time;

    /**
     * @Fields approval_date : TODO(批准日期)
     */
    @Field(type = FieldType.Date, format = DateFormat.custom, pattern = "yyyy-MM-dd")
    private String approval_date;

    /**
     * @Fields approval_reference_number : TODO(批准文号)
     */
    @Field(type = FieldType.keyword)
    private String approval_reference_number;

    /**
     * @Fields chinese_address : TODO(中文地址)
     */
    @Field(type = FieldType.keyword)
    private String chinese_address;

    /**
     * @Fields chinese_company_country_region : TODO(企业国家/地区中文)
     */
    @Field(type = FieldType.text, analyzer = "ik_max_word")
    private String chinese_company_country_region;

    /**
     * @Fields chinese_company_name : TODO(中文企业名)
     */
    @Field(type = FieldType.keyword)
    private String chinese_company_name;

    /**
     * @Fields chinese_manufactor : TODO(中文生产单位)
     */
    @Field(type = FieldType.keyword)
    private String chinese_manufactor;

    /**
     * @Fields chinese_vendor_address : TODO(中文厂商地址)
     */
    @Field(type = FieldType.keyword)
    private String chinese_vendor_address;

    /**
     * @Fields chinese_vendor_country_region : TODO(中文厂商国家/地区)
     */
    @Field(type = FieldType.keyword)
    private String chinese_vendor_country_region;

    /**
     * @Fields commodity_name : TODO(商品名)
     */
    @Field(type = FieldType.keyword)
    private String commodity_name;

    /**
     * @Fields compound : TODO(场地)
     */
    @Field(type = FieldType.keyword)
    private String compound;

    /**
     * @Fields dosage_form : TODO(剂型)
     */
    @Field(type = FieldType.keyword)
    private String dosage_form;

    /**
     * @Fields drug_standard_code : TODO(药品本位码)
     */
    @Field(type = FieldType.keyword)
    private String drug_standard_code;

    /**
     * @Fields drug_types : TODO(药品类型)
     */
    @Field(type = FieldType.keyword)
    private String drug_types;

    /**
     * @Fields english_product_name : TODO(英文产品名称)
     */
    @Field(type = FieldType.keyword)
    private String english_product_name;

    /**
     * @Fields first_approval_year : TODO(首次获批年份)
     */
    @Field(type = FieldType.keyword)
    private String first_approval_year;

    /**
     * @Fields indications : TODO(药物细分分类)
     */
    @Field(type = FieldType.keyword)
    private String indications;

    /**
     * @Fields manufactor : TODO(生产单位)
     */
    @Field(type = FieldType.text, analyzer = "tab_analyzer")
    private String manufactor;

    /**
     * @Fields manufactor_address : TODO(生产单位地址)
     */
    @Field(type = FieldType.keyword)
    private String manufactor_address;

    /**
     * @Fields manufactor_address : TODO(批准备注)
     */
    @Field(type = FieldType.keyword)
    private String note_of_approval_reference_number;

    /**
     * @Fields note_of_drug_standard_code : TODO(药品本位码备注)
     */
    @Field(type = FieldType.keyword)
    private String note_of_drug_standard_code;

    /**
     * @Fields original_approval_reference_number : TODO(原批准文号)
     */
    @Field(type = FieldType.keyword)
    private String original_approval_reference_number;

    /**
     * @Fields product_name : TODO(产品名称)
     */
    @Field(type = FieldType.keyword)
    private String product_name;

    /**
     * @Fields product_type : TODO(产品类型)
     */
    @Field(type = FieldType.keyword)
    private String product_type;

    /**
     * @Fields specifications : TODO(规格)
     */
    @Field(type = FieldType.keyword)
    private String specifications;

    @Field(type = FieldType.Nested)
    private List<WeightJson> weight_json;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getSYS_add_time() {
        return SYS_add_time;
    }

    public void setSYS_add_time(String sYS_add_time) {
        SYS_add_time = sYS_add_time;
    }

    public String getSYS_check_time() {
        return SYS_check_time;
    }

    public void setSYS_check_time(String sYS_check_time) {
        SYS_check_time = sYS_check_time;
    }

    public String getSYS_dm_update_time() {
        return SYS_dm_update_time;
    }

    public void setSYS_dm_update_time(String sYS_dm_update_time) {
        SYS_dm_update_time = sYS_dm_update_time;
    }

    public String getApproval_date() {
        return approval_date;
    }

    public void setApproval_date(String approval_date) {
        this.approval_date = approval_date;
    }

    public String getApproval_reference_number() {
        return approval_reference_number;
    }

    public void setApproval_reference_number(String approval_reference_number) {
        this.approval_reference_number = approval_reference_number;
    }

    public String getChinese_address() {
        return chinese_address;
    }

    public void setChinese_address(String chinese_address) {
        this.chinese_address = chinese_address;
    }

    public String getChinese_company_country_region() {
        return chinese_company_country_region;
    }

    public void setChinese_company_country_region(
            String chinese_company_country_region) {
        this.chinese_company_country_region = chinese_company_country_region;
    }

    public String getChinese_company_name() {
        return chinese_company_name;
    }

    public void setChinese_company_name(String chinese_company_name) {
        this.chinese_company_name = chinese_company_name;
    }

    public String getChinese_manufactor() {
        return chinese_manufactor;
    }

    public void setChinese_manufactor(String chinese_manufactor) {
        this.chinese_manufactor = chinese_manufactor;
    }

    public String getChinese_vendor_address() {
        return chinese_vendor_address;
    }

    public void setChinese_vendor_address(String chinese_vendor_address) {
        this.chinese_vendor_address = chinese_vendor_address;
    }

    public String getChinese_vendor_country_region() {
        return chinese_vendor_country_region;
    }

    public void setChinese_vendor_country_region(
            String chinese_vendor_country_region) {
        this.chinese_vendor_country_region = chinese_vendor_country_region;
    }

    public String getCommodity_name() {
        return commodity_name;
    }

    public void setCommodity_name(String commodity_name) {
        this.commodity_name = commodity_name;
    }

    public String getCompound() {
        return compound;
    }

    public void setCompound(String compound) {
        this.compound = compound;
    }

    public String getDosage_form() {
        return dosage_form;
    }

    public void setDosage_form(String dosage_form) {
        this.dosage_form = dosage_form;
    }

    public String getDrug_standard_code() {
        return drug_standard_code;
    }

    public void setDrug_standard_code(String drug_standard_code) {
        this.drug_standard_code = drug_standard_code;
    }

    public String getDrug_types() {
        return drug_types;
    }

    public void setDrug_types(String drug_types) {
        this.drug_types = drug_types;
    }

    public String getEnglish_product_name() {
        return english_product_name;
    }

    public void setEnglish_product_name(String english_product_name) {
        this.english_product_name = english_product_name;
    }

    public String getFirst_approval_year() {
        return first_approval_year;
    }

    public void setFirst_approval_year(String first_approval_year) {
        this.first_approval_year = first_approval_year;
    }

    public String getIndications() {
        return indications;
    }

    public void setIndications(String indications) {
        this.indications = indications;
    }

    public String getManufactor() {
        return manufactor;
    }

    public void setManufactor(String manufactor) {
        this.manufactor = manufactor;
    }

    public String getManufactor_address() {
        return manufactor_address;
    }

    public void setManufactor_address(String manufactor_address) {
        this.manufactor_address = manufactor_address;
    }

    public String getNote_of_approval_reference_number() {
        return note_of_approval_reference_number;
    }

    public void setNote_of_approval_reference_number(
            String note_of_approval_reference_number) {
        this.note_of_approval_reference_number = note_of_approval_reference_number;
    }

    public String getNote_of_drug_standard_code() {
        return note_of_drug_standard_code;
    }

    public void setNote_of_drug_standard_code(
            String note_of_drug_standard_code) {
        this.note_of_drug_standard_code = note_of_drug_standard_code;
    }

    public String getOriginal_approval_reference_number() {
        return original_approval_reference_number;
    }

    public void setOriginal_approval_reference_number(
            String original_approval_reference_number) {
        this.original_approval_reference_number = original_approval_reference_number;
    }

    public String getProduct_name() {
        return product_name;
    }

    public void setProduct_name(String product_name) {
        this.product_name = product_name;
    }

    public String getProduct_type() {
        return product_type;
    }

    public void setProduct_type(String product_type) {
        this.product_type = product_type;
    }

    public String getSpecifications() {
        return specifications;
    }

    public void setSpecifications(String specifications) {
        this.specifications = specifications;
    }

    public List<WeightJson> getWeight_json() {
        return weight_json;
    }

    public void setWeight_json(List<WeightJson> weight_json) {
        this.weight_json = weight_json;
    }
}
